Network System, Device Server, And Network System Control Method

ABSTRACT

An input control script embedded in a web page is received by a client terminal that accesses, using a web browser, a web application server on which a web application operates, and that controls an input device. The input control script comprises an acquisition request transmission unit that sends an acquisition request to the input device when a specific operation is performed on the web page from the web application server; an acquisition unit that acquires input information from the input device as a response to the acquisition request; and a drawing process unit that draws the input information acquired by the acquisition unit in a specific drawing area.

CONTINUING APPLICATION DATA

This application is a continuation of, and claims priority under 35U.S.C. §120 on, U.S. application Ser. No. 15/166,778, filed May 27,2016, which is a continuation of U.S. application Ser. No. 14/000,380,filed Aug. 19, 2013, now U.S. Pat. No. 9,398,074, issued Jul. 19, 2016,which is a national stage entry of PCT/JP2012/000701, filed Feb. 2,2012, which claims priority under 35 U.S.C. §119 on Japanese patentapplication no. 2011-034278, filed Feb. 21, 2011. The content of eachsuch related application is incorporated by reference herein in itsentirety.

TECHNICAL FIELD

The present invention relates to a network system to which one or moreinput devices are connected for use, a device server, and a networksystem control method.

BACKGROUND ART

Devices such as scanners and printers are commonly used connected over anetwork to a computer, but device drivers for controlling the devicesare required in order to use the devices. The device drivers aregenerally installed to the computer connected to the devices (see, forexample, PTL1).

CITATION LIST Patent Literature

[PTL1] JP-A-2002-251347

SUMMARY OF INVENTION Technical Problem

However, because device driver operation depends on the OS (operatingsystem) of the computer to which the device driver is installed, theuser must install the device driver corresponding to the OS installed onthe user's computer. However, the task of determining the OS that isused and installing software (device drivers) can be difficult for usersthat are not computer-savvy, and can be a significant burden.Reinstalling device drivers is also necessary when the computer isreplaced. Another problem is that the device manufacturer must develop adevice driver for each different computer OS, thus increasingdevelopment costs.

With consideration for the foregoing problem, an object of the presentinvention is to provide a network system enabling controlling an inputdevice without requiring a device driver that depends on the computerenvironment, to a device server, and to a network system control method.

Solution to Problem

In one aspect, the invention involves an input control script embeddedin a web page received by a client terminal that accesses, using a webbrowser, a web application server on which a web application operates,and that controls an input device. The input control script includes anacquisition request transmission unit that sends an acquisition requestto the input device when a specific operation is performed on the webpage from the web application server; an acquisition unit that acquiresinput information from the input device as a response to the acquisitionrequest; and a drawing process unit that draws the input informationacquired by the acquisition unit in a specific drawing area.

In one embodiment, the input control script further includes a stopoperation request transmission unit that sends a stop operation requestto the input device when stopping operation of the input device isselected on the web page from the web application server.

In one embodiment, the acquisition request transmission unit sends theacquisition request to a service endpoint address previously set in theinput control script. The acquisition request contains identification ofthe input device.

In one embodiment, the acquisition unit continues the acquisition evenwhen a selection window of the stopping operation is displayed on theweb page from the web application server.

In one embodiment, the input control script is lost when stoppingoperation of the input device is selected on the web page from the webapplication server.

In another aspect, the invention is embodied in a method of controllingscanning by an input control script embedded in a web page received by aclient terminal that accesses, using a web browser, a web applicationserver on which a web application operates, and that controls an inputdevice. The control method comprises an acquisition request transmissionstep that sends an acquisition request to the input device when aspecific operation is performed on the web page from the web applicationserver; an acquisition step that acquires input information from theinput device as a response to the acquisition request; and a drawingprocess step that draws the input information acquired by theacquisition step in a specific drawing area.

In one embodiment of this method, it further comprises a stop operationrequest transmission step that sends a stop operation request to theinput device when stopping operation of the input device is selected onthe web page from the web application server.

These configurations enable acquiring input information from an inputdevice by means of an input control script that is embedded in a webpage. More specifically, because the input device can be controlledusing a web browser (in a web page), an input device can be controlledby simply installing a web browser to the client terminal, and there isno need to install a device driver (a driver for the input device) oneach client terminal as there is with the related art. The need todevelop a plurality of device drivers for different operating systems isalso eliminated for the manufacturer of the input device, and relateddevelopment costs can therefore be reduced.

Furthermore, because a web browser is typically already installed onmost modern client terminals (computers including personal computers andsmartphones), even users that are not computer-savvy can easily use theinput device without knowing the operating environment (the type ofoperating system) of the terminal being used by the user. Note thatscanners and digital cameras are examples of input devices.

Other objects and attainments together with a fuller understanding ofthe invention will become apparent and appreciated by referring to thefollowing description and claims taken in conjunction with theaccompanying drawings.

BRIEF DESCRIPTION OF DRAWINGS

FIG. 1 shows the configuration of a network system according to anembodiment of the invention.

FIG. 2 is a block diagram showing the functional configuration of thenetwork system.

FIG. 3 is a flow chart describing steps in an image acquisition processand printing process on the network system.

FIG. 4 is a flow chart of steps in a process for handling an event thatchanges the web page during the image acquisition process.

DESCRIPTION OF EMBODIMENTS

A network system, device driver, and method of controlling a networksystem according to this embodiment of the invention are described belowwith reference to the accompanying figures. The network system accordingto this embodiment is a system that can run an image input process usinga web browser without installing a dedicated device driver on the clientterminal. Note that a scanner is used as an example of an image inputdevice in this embodiment.

FIG. 1 shows the configuration of the network system SY. As shown in thefigure, the network system SY includes a web application server 1, aclient terminal 2 that accesses the web application server 1, a scanner3 (image input device) that scans a specific document based on a requestfrom the client terminal 2, a printer 4 that prints based on a requestfrom the client terminal 2, and a removable interface board 5 (devicedriver) that is installed to the printer 4. The web application server 1and client terminal 2 are connected so that they can communicate overthe Internet. The client terminal 2 and interface board 5 are connectedso that they can communicate over a LAN. The scanner 3 is connectedthrough an communication unit 33 disposed to the interface board 5installed in the printer 4. The client terminal 2 can thus communicatethrough the interface board 5 with the scanner 3 and printer 4.

Note that the method of connecting to the network (Internet or LAN) maybe by wire or wireless. FIG. 1 also shows only one client terminal 2,scanner 3, and printer 4, but the invention is not so limited and anynumber of these can be used.

The web application server 1 has the hardware configuration of a generalcomputer in addition to a control unit 11, storage unit 12, andcommunication unit 13. The main parts of the control unit 11 include aCPU (central processing unit), ROM (read-only memory), and RAM (randomaccess memory). The CPU runs a program stored in ROM, and controlsoperation of the web application server 1. ROM stores control data and acontrol program enabling the CPU to execute various processes. RAM isused as working memory for the CPU to execute different processes. Thestorage unit 12 stores an HTTP server 14 and web application 15.

The communication unit 13 is an interface for communicating with theclient terminal 2 (web browser 66). Communication between the webapplication server 1 and client terminal 2 is controlled by the HTTPserver 14 using Hypertext Transfer Protocol (HTTP). More specifically,the web application server 1 receives an HTTP request from the clientterminal 2 (web browser 66), and based on the URL (Uniform ResourceLocator) contained in the HTTP request, sends a web page 21 provided bythe web application 15 to the client terminal 2.

As described in detail below, in addition to a page control script 22(JavaScript®) for controlling the web page 21, a printing control script23 (JavaScript®) for controlling printing related to the web page 21,and a scanner control script 24 (JavaScript®, an image control script)that controls image input from the scanner 3, are included (embedded) inthe webpage 21, and the client terminal 2 executes a printing processand an image acquisition process (image input process) by running theprinting control script 23 and scanner control script 24 through the webbrowser 56 (on the web page 21). The printing control script 23 andscanner control script 24 can be contained on different web pages 21, orboth may be contained on a single web page 21.

The interface board 5 includes a control unit 31, storage unit 32,communication unit 33, and board interface 34. The control unit 31primarily includes a CPU and RAM. The CPU runs a program stored in thestorage unit 32 and controls the interface board 5. RAM is used asworking memory for the CPU to execute processes. The storage unit 32 is,for example, nonvolatile memory (such as flash ROM), and stores controldata and control programs for the CPU to execute the processes. Thestorage unit 32 also an HTTP server 35.

The board interface 34 is a port for installation to the printer 4, andcommunication with the printer 3A passes through this board interface34. The communication unit 33 is an interface for communicating with theclient terminal 2 (web browser 66) and scanner 3, and comprises a groupof interfaces compatible with different kinds of connections, such as aLAN interface and a USB interface.

The HTTP server 35 handles communication between the interface board 5and the client terminal 2 (web browser 66) using HTTP. Morespecifically, when a process request for the scanner 3 (such as an imageacquisition request or stop scanning request), or a process request forthe printer 4 (such as a printing process request), is sent from theclient terminal 2 to the service endpoint address (URI) assigned to theinterface board 5, the interface board 5 sends a process command to thescanner 3 or printer 4 based on the received process request (asdescribed in detail below).

The scanner 3 primarily includes a control unit 41, storage unit 42,image reader 43, and communication unit 44. The control unit 41primarily includes a CPU and RAM. The CPU runs a program stored in thestorage unit 42 and controls the scanner 3. RAM is used as workingmemory for the CPU to execute processes. The storage unit 42 is, forexample, nonvolatile memory (such as flash ROM), and stores control dataand control programs for the CPU to execute the processes.

The image reader 43 optically reads (scans) documents, such as text orphotographs, placed on the document table (not shown) as controlled bythe CPU. The communication unit 44 is an interface for communicatingwith the interface board 5, and comprises a group of interfacescompatible with different kinds of connections, such as a LAN interfaceand a USB interface. The scanner 3 receives an image acquisition commandfrom the client terminal 2 through the interface board 5, scans thedocument, and then sends the result of scanning to the client terminal2.

The printer 4 primarily includes a control unit 51, storage unit 52,print mechanism 53, and printer interface 54. The control unit 51primarily includes a CPU and RAM. The CPU runs a program stored in thestorage unit 52 and controls the printer 4. RAM is used as workingmemory for the CPU to execute processes. The storage unit 52 is, forexample, nonvolatile memory (such as flash ROM), and stores control dataand control programs for the CPU to execute the processes.

The print mechanism 53 includes a paper feed mechanism, printhead, andpaper cutting mechanism, and performs a printing operation as controlledby the CPU. Any desired printing method may be used, including an inkjetor laser printing method. The board interface 54 is a port that connectsto the interface board 5 (board interface 34), and communicates with theinterface board 5. The printer 4 receives print data sent from theclient terminal 2 through the interface board 5, and controls the printmechanism 53 to print based on the received print data.

The client terminal 2 primarily includes a control unit 61, storage unit62, display unit 63, operating unit 64, and communication unit 65. Thecontrol unit 61 primarily includes a CPU and RAM. The CPU runs a programstored in the storage unit 62 and controls the client terminal 2. RAM isused as working memory for the CPU to run processes. The storage unit 62is, for example, a HDD (hard disk drive) or nonvolatile memory (such asflash ROM), and stores control data and control programs used by the CPUto execute different processes. The storage unit 62 also stores a webbrowser 66.

The display unit 63 displays a web page 21 acquired (downloaded) by theweb browser 66, and displays windows for reporting events accompanyingoperations performed in the web browser 66, as well as windows forconfiguring settings and selections. These windows could be displayed inthe web page 21 displayed by the web browser 66, or displayed in a newweb page 21. The operating unit 64 is an operating means for performinginput operations (such as inputting text and drawing figures), andmaking selection/decision operations, image acquisition operations(scanning operations), and printing operations, in a web page 21displayed by the web browser 66. Note that the display unit 63 andoperating unit 64 may be rendered as separate elements, or rendered inunison by, for example, using a touch screen panel as the display unit63.

The communication unit 65 is an interface for communication with the webapplication server 1 and interface board 5, and the client terminal 2uses the web browser 66 to communicate with the devices. The web browser66 is a simple browser (standard browser) with no plugin modules, andthe client terminal 2 uses this web browser 66 to access thenetwork-connected (Internet-connected) web application server 1 andreceive web pages 21 provided by the web application 15.

The web page 21 includes a page control script 22, printing controlscript 23, and scanner control script 24 as described above, and when animage acquisition operation (such as pressing a scan button or clickingon a specific area) is performed by the user in the web browser 66 (onthe web page 21), the web browser 66 runs the scanner control script 24embedded in the web page 21, acquires (inputs) the image data from thescanner 3 through the interface board 5, and draws the image data in aspecific drawing area. This drawing area is a drawing canvas (HTML5canvas element) defined (set) in the page control script 22, forexample.

When the user issues a print command (such as by pressing a printbutton) on the web page 21, the web browser 66 runs the printing controlscript 23 embedded in the web page 21, generates print data from theimage data written in the drawing area, and sends the print data to theprinter 4 through the interface board 5.

The client terminal 2 may be any computer on which the web browser 66runs, and may be a mobile terminal (such as a cellular telephone orsmartphone) or personal computer (PC), for example.

The functional configuration of the network system SY is described nextwith reference to FIG. 2. The client terminal 2 has a web pageacquisition means 71 (web page acquisition unit), image acquisitionrequest transmission means 72 (image acquisition request transmissionunit), image acquisition means 73 (image acquisition unit), drawingprocess means 74 (drawing process unit), print data generation means 75(print data generation unit), print process request transmission means76 (print process request transmission unit), and event processing means77 (selection window display unit, stop operation request transmissionunit).

The web page acquisition unit 71 primarily includes the control unit 61and web browser 66, accesses the web application server 1 (webapplication 15) through the web browser 66, and gets the desired webpage 21 (the web page 21 containing the page control script 22, printingcontrol script 23, and scanner control script 24).

The image acquisition request transmission means 72 primarily includesthe control unit 61 and scanner control script 24, and runs the scannercontrol script 24 and sends an image acquisition request (scan request)to the scanner 3 when the user performs an image acquisition operationin the web page 21. More specifically, the image acquisition requesttransmission means 72 sends an image acquisition request containingscanner identification information (information such as a scanner ID orcommunication port) identifying a scanner 3 and scanning configurationinformation (such as the scanning area, resolution, color/grayscale/monochrome setting, the image processing method to use forscanning, and a time limit to complete processing) to the serviceendpoint address of the interface board 5. The service endpoint addressof the interface board 5 and the scanner identification information arepreviously set in the scanner control script 24. The scanningconfiguration information is set by, for example, displaying a setupwindow on the web page 21 and the user inputting the settings in thesetup window when the user performs an image acquisition operation.

The image acquisition means 73 primarily includes the control unit 61and scanner control script 24, and acquires the image captured by thescanner 3 in response to the image acquisition request through theinterface board 5. Note that the image acquisition means 73 interruptsimage acquisition when the web page 21 is changed (when an unload eventoccurs) during scanning (while an image is being received). This isbecause the scanner control script 24, which is an element of the imageacquisition means 73, is embedded in the web page 21, and the scannercontrol script 24 is lost when the web page 21 is changed.

The main parts of the drawing process means 74 are the control unit 61,page control script 22, and scanner control script 24, and the drawingprocess means 74 draws the image acquired from the scanner 3 (the imagescanned by the scanner 3) in the drawing area by running the scannercontrol script 24. When the user performs an input operation on the webpage 21 displayed by the web browser 66, the drawing process means 74edits (processes) the image acquired from the scanner 3 or merges theacquired image with another image (an image selected by the user) bydrawing the result of the user input (the result of inputting text orselecting an image, for example) in the drawing area by running the pagecontrol script 22.

The main parts of the print data generation means 75 are the controlunit 61 and printing control script 23. When the user performs a printoperation (such as pressing a print button) on the web page 21, theprint data generation means 75 runs the printing control script 23 toconvert the image data drawn in the drawing area to a form that can beprocessed by the printer 4, generating print data (such as a rasterimage command, bitmap file, or XML print data). The print datageneration means 75 also temporarily stores the generated print data ina specific storage area (storage unit 62). Web storage, for example, canbe used to temporarily store the print data.

The control unit 61 and printing control script 23 are the main parts ofthe print process request transmission means 76, which sends a printingprocess request to the printer 4. More specifically, the print processrequest transmission means 76 sends a printing process requestcontaining printer identification information (such as the printer ID orcommunication port) identifying the printer 4, and the print datatemporarily stored (generated) by the print data generation means 75, tothe service endpoint address of the interface board 5. Note that theservice endpoint address of the interface board 5 and the printeridentification information are previously set in the printing controlscript 23. If the web page 21 is changed (if an unload event occurs)while the print data is being sent, the print process requesttransmission means 76 interrupts transmission. This is because theprinting control script 23, which is an element of the print processrequest transmission means 76, is embedded in the web page 21, and theprinting control script 23 is lost when the web page 21 is changed.

The event processing means 77 primarily includes the control unit 61,display unit 63, page control script 22, printing control script 23, andscanner control script 24, and reports various events to the user. Morespecifically, when a user operation causes an event that changes thedisplayed web page 21 (a before unload event) while the scanner controlscript 24 is running and an image is being acquired from the scanner 3(while the scanner is operating), the event processing means 77 presentsa message indicating that the scanner 3 is operating and displays anoperation selection window (selection window display unit) for selectingwhether or not to stop scanner 3 operation (whether to stop or continuescanner operation). If the user chooses to continue scanner operation inthis operation selection window, changing the web page 21 is stopped.However, if the user chooses to stop scanner operation in this operationselection window, the event processing means 77 sends a request to stopscanner 3 operation (including scanner identification information) tothe interface board 5, and displays a notice that the image acquisitionprocess was interrupted (stop operation request transmission unit).

When a user operation causes an event that changes the displayed webpage 21 while the printing control script 23 is running and the printingprocess is executing (while print data is being sent), the eventprocessing means 77 presents a change confirmation window for selectingwhether or not to change the web page 21. If the option that cancelschanging the web page is selected by the user in this changeconfirmation window, changing the web page 21 is stopped. However, ifthe option that changes the web page is selected by the user in thechange confirmation window, the event processing means 77 displays anotice indicating that print data transmission was interrupted.

The interface board 5 has a process request receiving means 81 (imageacquisition request receiving unit, print data receiving unit), processcommand means 82 (print control unit), and board-side image transmissionmeans 83 (image transmission unit). The process request receiving means81 primarily includes the control unit 31 and HTTP server 35, andreceives process requests (such as the printing process request, imageacquisition request, and stop operation request) from the clientterminal 2 (printing control script 23 and scanner control script 24).The process command means 82 primarily includes the control unit 31, andsends commands to the scanner 3 or printer 4 based on the processrequest received by the process request receiving means 81. Morespecifically, when the process request from the client terminal 2 is aprinting process request, the process command means 82 sends print datato the printer 4 specified by the printer identification information.When the process request from the client terminal 2 is an imageacquisition request, the process command means 82 sends a command basedon the image acquisition request to the scanner 3 specified by thescanner identification information. When the process request from theclient terminal 2 is a stop operation request, the process command means82 sends a command based on the stop operation request to the scanner 3specified by the scanner identification information. The board-sideimage transmission means 83 primarily includes the control unit 31 andHTTP server 35, and receives and sends the image captured by the scanner3 to the client terminal 2.

The scanner 3 primarily includes an image reading means 91, scanner-sideimage transmission means 92, and image reading interruption means 93.The image reading means 91 primarily includes a control unit 41 andimage reader 43, and based on an image acquisition command (imageacquisition request) received from the interface board 5, scans thedocument set on the document table with the image reader 43. Thescanner-side image transmission means 92 primarily includes the controlunit 41, and sends the image captured by the image reading means 91 tothe interface board 5. The image reading interruption means 93 primarilyincludes the control unit 41 and image reader 43, and based on a stopoperation command (stop operation request) received from the interfaceboard 5 stops (interrupts) scanning by the image reader 43.

The printer 4 has a printer-side print data receiving means 101 andprinting means 102. The printer-side print data receiving means 101primarily includes a control unit 51, and receives print data sent fromthe client terminal 2 through the interface board 5. The printing means102 primarily includes the control unit 51 and print mechanism 53, andprints images based on the received print data. The printing means 102prints in the printing process after all print data sent from the clientterminal 2 has been received. More specifically, the print data sentfrom the client terminal 2 is temporarily stored to a specific storagearea in the storage unit 52, and the stored print data is then read andprinted.

Steps in the image acquisition process (image input process) andprinting process in this network system SY are described next withreference to the flow chart in FIG. 3. First, the client terminal 2(control unit 61) accesses the web application server 1 (web application15) based on user operations in the web browser 66, gets the desired webpage 21 (the web page 21 containing the page control script 22, printingcontrol script 23, and scanner control script 24), and displays the webpage 21 in the web browser 66 (S01, web page acquisition step).

When the user then performs an image acquisition operation on the webpage 21 (such as clicking a scan button displayed on the web page 21),the client terminal 2 acquires an image acquisition command accompanyingthe image acquisition operation by means of the page control script 22(S02). Triggered by acquiring this image acquisition command, thescanner control script 24 is called from the page control script 22, andthe image acquisition process starts.

More specifically, the client terminal 2 sends an image acquisitionrequest to the interface board 5 (the service endpoint address of theinterface board 5) by executing the scanner control script 24 (S03,image acquisition request transmission step). Identification information(scanner identification information) for the desired scanner 3, and theconfiguration information for scanning operation, are contained in thisimage acquisition request.

The interface board 5 (control unit 31) then receives the imageacquisition request (S04, image acquisition request reception step), andissues a command (scan command) to the specified scanner 3 based on theimage acquisition request (S05). The scanner 3 (control unit 41) thatreceived the scan command from the interface board 5 controls the imagereader 43 to start the document scanning process (S06), and sends thescanned image through the interface board 5 to the client terminal 2(S07, S08, image transmission step).

Once the image that was captured by the scanner 3 is received from theinterface board 5 (S09, image acquisition step), the client terminal 2draws the image in the drawing area (S10). After the image is drawn andthe user then performs a specific input operation on the web page 21,the client terminal 2 receives the input operation according to the pagecontrol script 22 embedded in the web page 21, and draws the result ofthe received input operation in the drawing area. More specifically,processes such as editing the image acquired from the scanner 3 ormerging the image with another image selected by the user can beperformed. Process control when an event that changes the web page 21occurs as a result of user operation of the browser during the imageacquisition process (while scanning) is described below with referenceto FIG. 4.

If the user calls a printing operation from the web page 21 after theimage is drawn in S10 (such as by clicking a print button on the webpage 21), the client terminal 2 receives a print command resulting fromthe printing operation from the page control script 22 (S11). Triggeredby getting this print command, the printing control script 23 is calledfrom the page control script 22, and the printing process starts.

More specifically, the client terminal 2 image processes (such asdigitizing and gathering) the image drawn in the drawing area accordingto the printing control script 23 (S12), converts the image data toprint data in a form that can be processed by the printer 4 (S13), andsaves the resulting print data in the storage unit 62 (S14). Steps S13and S14 repeat until print data generation is completed, that is, untilall image data drawn in the drawing area is converted to print data (S15returns No).

When print data generation is completed (S15 returns Yes), the clientterminal 2 sends a printing process request to the interface board 5(the service endpoint address of the interface board 5) by running theprinting control script 23 (S16). Identification information (printeridentification information) for the desired printer 4, and the printdata stored in the storage unit 62, are included in this printingprocess request.

When the printing process request from the client terminal 2 is received(S17), the interface board 5 sends the print data to the printer 4specified by the printer identification information (S18). After theprint data is received from the interface board 5 (S19), the printer 4(control unit 51) saves the print data in the storage unit 52 (S20).Steps S19 and S20 repeat until all print data is received (S21 returnsNo). After all print data is received (S21 returns Yes), the printer 4reads and prints based on the saved print data (prints an image) (S22).

The steps performed when an event that changes the web page 21 isgenerated while the client terminal 2 is receiving an image from thescanner 3 (during the scanning process) is described next with referenceto the flow chart in FIG. 4. Note that a special process is notperformed when an event that changes the web page 21 is not generated,and description thereof is omitted in the following description of theflow chart in FIG. 4.

The client terminal 2 (control unit 61) first starts the imageacquisition process of the scanner 3 by means of the scanner controlscript 24 (S31). If an event that changes the displayed web page 21(that is, the web page 21 in which the currently executing scannercontrol script 24 is embedded) to another page is generated by the userusing the web browser 66 (S32 returns Yes), the client terminal 2continues image acquisition by running the scanner control script 24while simultaneously displaying a message indicating that the scanner 3is operating and an operation selection window for selecting whether ornot to stop the scanning operation of the scanner 3 (S33).

If continuing the scanning operation is selected by the user in thisoperation selection window (S34 returns No), the client terminal 2continues the image acquisition process by running the scanner controlscript 24, and when all image data has been received (S35 returns Yes),ends the image acquisition process (S36). However, if stopping thescanning operation is selected by the user in this operation selectionwindow (S34 returns Yes), the client terminal 2 sends a stop operationrequest to the scanner 3 (S37), interrupts the image acquisition process(S38) in conjunction with losing the scanner control script 24, anddisplays a message indicating that the image acquisition process wasstopped (S39). By thus displaying an operation selection window when anevent that changes the web page 21 occurs, unintended interruption ofthe image acquisition process (image input from the scanner 3) resultingfrom the user accidentally changing the web page can be prevented.

As described above, this embodiment enables acquiring a specific imagefrom a scanner 3 (image input device) using a scanner control script 24(image input control script) embedded in a web page 21. Morespecifically, because a scanner 3 can be controlled using a web browser66 (from within a web page 21), the scanner 3 can be controlled bysimply installing a web browser 66 on the client terminal 2, and, unlikewith the related art, there is no need to install a device driver (ascanner driver) on each client terminal 2. There is also no need for themanufacturer supplying the scanner 3 to develop plural device driversfor different different operating systems, and the related developmentcost can be reduced.

Furthermore, because a web browser 66 is typically already installed onmost modern client terminals 2 (computers including personal computersand smartphones), even users that are not computer-savvy can easily usethe scanner 3 without knowing the operating environment (the type ofoperating system) of the terminal being used by the user.

This embodiment is described using a scanner 3 as an example of an imageinput device, but the invention is not so limited. For example, adigital camera (camera) could be used as an image input device. In thisimplementation, an image input control script that controls (requests aprocess) selecting files and acquiring images stored in the camera, andcontrols (requests a process) acquiring a directory of files stored inthe camera, is embedded in the web page 21 and used to control thecamera.

The identification information that identifies (specifies) the scanner 3or printer 4 is predefined in the scanner control script 24 and printingcontrol script 23 in this embodiment, but the invention is not solimited. For example, when plural scanners 3 and printers 4 areconnected and can be used, the user could be made to select the desiredscanner 3 or printer 4 from a device list (a list of scanners or a listof printers), and identification information for the selected scanner 3or printer 4 sent to the interface board 5 by the corresponding controlscript.

This embodiment describes a configuration in which the interface board 5is installed to the printer 4, but the invention is not so limited and aconfiguration having the interface board 5 installed to the scanner 3 isalso conceivable. In this implementation an interface for connecting tothe board interface 34 of the interface board 5 is disposed to thescanner 3, and an interface that communicates with the communicationunit 33 of the interface board 5 is disposed to the printer 4.

The means (functions) of the interface board 5 in this embodiment canalternatively be rendered by a common personal computer (device server).Further alternatively, a configuration in which the above means aredisposed to the scanner 3 and printer 4 is also conceivable.

Elements of the network system SY (client terminal 2 and interface board5) described above can also be provided as a program. This program canalso be provided stored on a storage medium (not shown in the figure).Examples of such storage media include CD-ROM, flash ROM, memory cards(Compact Flash®, smart media, memory sticks), Compact Discs,magneto-optical discs, Digital Versatile Discs, and floppy disks.

The hardware configuration of the network system SY and process stepsare also not limited to the foregoing embodiment, and can be changed asdesired without departing from the scope of the invention.

REFERENCE SIGNS LIST

-   1 web application server-   2 client terminal-   3 scanner-   4 printer-   5 interface board-   15 web application-   21 web page-   22 page control script-   23 printing control script-   66 web browser-   71 web page acquisition means-   72 image acquisition request transmission means-   73 image acquisition means-   74 drawing process means-   75 print data generation means-   76 print process request transmission means-   77 event processing means-   81 process request receiving means-   82 process command means-   83 board-side image transmission means-   SY network system

1. An input control script embedded in a web page received by a clientterminal that accesses, using a web browser, a web application server onwhich a web application operates, and that controls an input device, theinput control script comprising: an acquisition request transmissionunit that sends an acquisition request to the input device when aspecific operation is performed on the web page from the web applicationserver; an acquisition unit that acquires input information from theinput device as a response to the acquisition request; and a drawingprocess unit that draws the input information acquired by theacquisition unit in a specific drawing area.
 2. The input control scriptdescribed in claim 1, further comprising: a stop operation requesttransmission unit that sends a stop operation request to the inputdevice when stopping operation of the input device is selected on theweb page from the web application server.
 3. The input control scriptdescribed in claim 1, wherein: the acquisition request transmission unitsends the acquisition request to a service endpoint address previouslyset in the input control script, the acquisition request containingidentification of the input device.
 4. The input control scriptdescribed in claim 2, wherein: the acquisition unit continues theacquisition even when a selection window of the stopping operation isdisplayed on the web page from the web application server.
 5. The inputcontrol script described in claim 1, wherein: the input control scriptis lost when stopping operation of the input device is selected on theweb page from the web application server.
 6. A method of controllingscanning by an input control script embedded in a web page received by aclient terminal that accesses, using a web browser, a web applicationserver on which a web application operates, and that controls an inputdevice, the method comprising: an acquisition request transmission stepthat sends an acquisition request to the input device when a specificoperation is performed on the web page from the web application server;an acquisition step that acquires input information from the inputdevice as a response to the acquisition request; and a drawing processstep that draws the input information acquired by the acquisition stepin a specific drawing area.
 7. The method for controlling scanning by aninput control script described in claim 6, further comprising: a stopoperation request transmission step that sends a stop operation requestto the input device when stopping operation of the input device isselected on the web page from the web application server.